home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1998 April / EnigmA AMIGA RUN 26 (1998)(G.R. Edizioni)(IT)[!][issue 1998-04].iso / classx / util / xfa_util / arexx / adpro_xfatoanim5.rexx < prev    next >
OS/2 REXX Batch file  |  1998-03-09  |  2KB  |  83 lines

  1. /*   XFA To Anim5 - ADPro Example
  2. **
  3. ** (C) Copyright 1995 Fabio Rotondo
  4. **
  5. **      Written For ClassX.
  6. **
  7. */
  8. ADDRESS "XFA.1"
  9.  
  10. InputMode  XFAAnim              /* Metodo Di Input XFA Anim           */
  11. OutputMode Frames               /* Metodo di output di XFA è FRAMES   */
  12.  
  13. SetPath ADPro 'ADPro:ADPro'     /* Settiamo Il Path Di Ricerca        */
  14. SetPort ADPro 'ADPro'           /* Settiamo la porta di comunicazione */
  15.  
  16. CallProcessor ADPro             /* Chiamiamo ADPro                    */
  17.  
  18. CountFormat ''                  /* Il formato di conteggio deve essere ""  */
  19. GetInput                        /* Chiediamo Il nome del File XFA in Input */
  20. OutputName 'T:Frame'            /* Il nome in output è T:Frame             */
  21.  
  22. ADDRESS 'ADPro'             /* Cominciamo Una Bella Chiaccherata con ADPro */
  23. OPTIONS RESULTS
  24. LFORMAT 'IFF'               /* Formato Di Caricamento: IFF  */
  25. SFORMAT 'ANIM'              /* Formato Di Salvataggio: ANIM */
  26. PSTATUS UNLOCKED
  27.  
  28. GETFILE '"Inserisci il Nome Dell''Anim5 Da Creare"'
  29. IF RC = 10 THEN abort()
  30. fout = ADPRO_RESULT
  31.  
  32.  
  33. ADDRESS 'XFA.1'
  34.  
  35. Convert                     /* Iniziamo La Conversione       */
  36.  
  37. status = -1
  38. count  = 0
  39.  
  40. DO WHILE status=-1
  41.     ADDRESS 'XFA.1'
  42.     XFANextFrame
  43.     GetStatus()
  44.     IF status = -1 THEN                     /* Se il frame esiste...  */
  45.         ADDRESS 'ADPro'
  46.         CLEAR_RENDERED                      /* Puliamo la memoria di ADPro     */
  47.         CLEAR_RAW
  48.         fname = 'T:Frame'||count
  49.         count = count +1                    /* Contatore dell'Anim    */
  50.         LOAD fname                          /* Carichiamo Il frame    */
  51.         EXECUTE                             /* Renderizziamo il frame */
  52.         SAVE fout IMAGE APPEND SMALLER BYTE /* Salviamo il frame               */
  53.         IF count = 1 THEN PSTATUS LOCKED    /* Lockiamo la palette dal 1 frame */
  54.  
  55.         ADDRESS 'XFA.1'
  56.         KILLFILE fname                      /* Chiamiamo il comando 'delete'
  57.                                             ** del DOS per cancellare il frame */
  58.     ENDIF
  59.  
  60. END
  61. ADDRESS 'XFA.1'
  62. XFAClose
  63.  
  64. ADDRESS 'ADPro'
  65. SAVE fout IMAGE WRAPUP SMALLER BYTE
  66. CLEAR_RENDERED                      /* Puliamo la memoria di ADPro     */
  67. CLEAR_RAW
  68.  
  69. Message "Conversion done."
  70. Exit(0)
  71.  
  72. GetStatus:
  73.     IF OPEN('sfile', 'ENV:XFAStatus', 'READ') THEN
  74.       status=READLN('sfile')
  75.       CLOSE('sfile')
  76.     ENDIF
  77.     RETURN status
  78.  
  79. Abort:
  80.     ADDRESS 'XFA.1'
  81.     Message '"Operation Aborted By The User."'
  82.     Exit(0)
  83.